package com.platform.web.mapper;

import com.platform.web.model.Permission;
import com.platform.web.model.RolePermisson;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
 * 角色关联权限Mapper类
 * 
 * @author LiangMingHui
 *
 */
public interface RolePermissionMapper {

	/**
	 * 查找所有启用的权限数据
	 *
	 * @return
	 */
	List<Permission> getPermissionByStatus();

	/**
	 * 根据用户用户ID，查询该用户拥有的权限
	 *
	 * @param userId
	 * @return
	 */
	List<Permission> getPermissionsByUserId(String userId);

	/**
	 * 根据角色id，查询角色权限
	 *
	 * @param roleId
	 * @return
	 */
	List<Permission> getRolePermissionsList(String roleId);
	/**
	 * 根据用户id，查询角色权限
	 *
	 * @param roleId
	 * @return
	 */
	List<Permission> getRolePermissionsListByUserId(String roleId);

	/**
	 * 根据角色ID 删除角色权限
	 *
	 * @param roleId
	 * @return
	 */
	int deletePermissionsByRole(@Param("roleId") String roleId);

	/**
	 * 批量插入角色权限
	 *
	 * @param list
	 * @return
	 */
	int insertBatchRolePermission(List<RolePermisson> list);


	//供应商模块
	/**
	 * 根据用户用户ID，查询该用户拥有的权限
	 *
	 * @param userId
	 * @return
	 */
	List<Permission> getSuppPermissionsByUserId(String userId);
}
